#pragma once

#include "BaseInc.h"

typedef DRAWING_API struct tag_buffer_simple
{
	union
	{
		buffer_t buffer;
		struct
		{
			buffer_get_line_func_t get_line_func;
			buffer_set_pixel_aa_func_t aa_set_pixel_func;
			buffer_set_pixel_na_func_t na_set_pixel_func;
		};
	};
	uint_32 color;
	image_data_t img;
	uint_8 gmap[255];
	float_32 gamma;
}buffer_simple_t;


void buffer_simple_initial(void * buffer);
uint_8 * buffer_simple_get_line(tag_buffer * buffer, int_32 y);
void buffer_simple_set_gama(void * buffer, float_32 gamma);

void buffer_simple_set_pixel_aa(tag_buffer * buffer, uint_8 * line, int_32 x, int_32 alpha);
void buffer_simple_set_pixel_na(tag_buffer * buffer, uint_8 * line, int_32 x);

